Release 10.1A: OpenEdge Development:
Progress Dynamics Administration


Development impact using generated-4GL objects

The primary development constraint with using generated-4GL static objects in your application is that you can run most such objects only within a generated-4GL container object. So, with one exception, if you decide to deploy a contained instance as a generated-4GL static object, you must also deploy the container as a generated-4GL static object.

The exception to deploying dynamic containers as generated-4GL objects is for dynamic TreeView windows. Because the detail frame objects (run by clicking the nodes of a TreeView) run as master objects, they receive none of their rendering properties from their parent container objects (the dynamic TreeView windows). So, you can run generated-4GL detail frame objects within either dynamic or generated-4GL TreeView windows.

The 4GL Generator mechanism is primarily designed as a performance-enhanced deployment feature. However, if you use generated-4GL static objects in your application, some Dynamics APIs play a particular role in executing these objects that you might need to manage.

Table D–3 lists the APIs that play a particular role and describes how they work with generated-4GL static objects.

Table D–3: APIs for running generated-4GL static objects
Name
Manager or class
Description
menuItemSecurityCheck 
Security manager
Checks the security settings for a specified menu item.
menuStructureSecurityCheck 
Security manager
Checks the security settings for a specified menu structure.
launchContainer 
Session manager
Launches containers. This is the primary point for launching top-level containers, such as menu controller, TreeView, and other windows. It is the API that searches for the generated-4GL for this type of object before attempting to retrieve and render its dynamic equivalent from the Repository.
startDataObject 
Repository manager
Starts SmartDataObjects. It is the API that searches for the generated-4GL SmartDataObject before attempting to retrieve and render its dynamic equivalent from the Repository.
retrieveBandsAndActions 
ADM toolbar
Encapsulates the retrieval and population of the toolbar temp-tables. This call includes the current call to rygetmensp.p and also attempts to populate the menu temp-tables using the generated adm-loadSmartToolbar() call both in the toolbar’s container (for object menus) and in itself (for toolbar menus).
constructObject 
ADM container
Launches contained objects. This API starts the object and sets up Page (if relevant) and Container links. It searches for the generated-4GL for the object before attempting to retrieve and render its dynamic equivalent from the Repository.
getMappedFileName 
Repository manager
Returns the full pathname for a given logical object name. This API uses the map file concept to determine the filename. If it cannot find a physical file, the API returns the Unknown value (?).

For more information on the manager APIs that interact with generated-4GL objects, see OpenEdge Development: Progress Dynamics Managers API Reference . For information on the ADM APIs, see OpenEdge Development: ADM Reference .


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095